package edu.scau.mis.sys.service;

import edu.scau.mis.sys.entity.VerifyCode;
import edu.scau.mis.sys.utils.RandomUtils;
import org.springframework.web.multipart.MultipartFile;

import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;

/**
 * 验证码生成接口
 */
public interface VerifyCodeGenService {

    /**
     * 生成验证码code
     *
     * @return
     */
    String generateCode() ;

    /**
     * 生成验证码图片
     *
     * @param width
     * @param height
     * @param code
     * @param os
     * @return
     */
    String generatePhoto(int width, int height, String code, ByteArrayOutputStream os);

    /**
     * 生成验证码对象
     *
     * @param width
     * @param height
     * @return
     * @throws IOException
     */
    VerifyCode generate(int width, int height) ;
}
